package com.zhiche.lisa.tms.service;


import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.zhiche.lisa.tms.dao.model.ShipOrderItem;
import com.zhiche.lisa.tms.dto.ReceiptDTO;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 运单货物明细 服务类
 * </p>
 *
 * @author qichao
 * @since 2018-06-18
 */
public interface IShipOrderItemService extends IService<ShipOrderItem> {

    ShipOrderItem getShipOrderItemById(Long id);
    /**
     * 根据来源唯一键查询运单货物明细
     */
    ShipOrderItem queryShipOrderItem( String itemSourceKey);

    Map<String, Object> queryPurchasePriceOtm(Long id);

    List<ShipOrderItem> selectListNotenant(EntityWrapper<ShipOrderItem> itemEW);

    /**
     * 根据装车CODE得到运单货物明细列表
     * @param code 装车code
     * @return
     */
    List<Map<String, Object>> getShipOrderItemByShipCode(String code);

    void updateByshipmentId(String orderReleaseId, String shipTime);

    List<ShipOrderItem> selectByShipmentId(String shipmentId);

    void selectWmsNotShipped();

    String cancelShipTime(Map<String,Object> map);

    Page<ReceiptDTO> getReceiptList(Page<ReceiptDTO> page,String token);

    void receiptStatus(Map<String, String> map);
    List<ReceiptDTO> exportReceiptList(Map<String, Object> map,String token);

    ShipOrderItem getShipOrderItemByOrderNo(String orderNo,String itemSourceKey);

    List<ShipOrderItem> getListNotenant(EntityWrapper<ShipOrderItem> shipOrderItemWrapper);
}
